Sensorless lost/found rotor detection for permanent magnet motors

ABSTRACT

Various methods of detecting a found rotor, a lost rotor, a locked rotor and a caught rotor after a power disruption using flux estimates are disclosed. Also disclosed are permanent magnet motor controllers and assemblies suitable for performing one or more of these methods.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.12/570,504 filed Sep. 30, 2009, which claims the benefit of U.S.Provisional Application No. 61/244,760 filed Sep. 22, 2009. The entiredisclosures of the above applications are incorporated herein byreference.

FIELD

The present disclosure relates to sensorless detection of rotor positionand/or speed in permanent magnet motors, including detecting when arotor is lost or found for purposes of controlling the motor.

BACKGROUND

This section provides background information related to the presentdisclosure which is not necessarily prior art.

Permanent magnet motors typically include a stator and a rotor thatrotates within or around the stator. The speed and angular position ofthe rotor are commonly used to generate control signals for the motor.Traditionally, the speed and angular position of the rotor aredetermined via one or more rotor position sensors. More recently,techniques have been developed and used for determining the speed andangular position of the rotor sensorlessly (i.e., without directmeasurement of the rotor speed or position). For example, flux of themotor may be estimated and used to estimate the rotor speed and/orposition. The estimated flux is not used, however, when starting thesemotors. Instead, the motors are controlled without relying on estimatedflux until a preset time period has elapsed, or until the motor reachesa defined speed, torque output, etc. At that point, the flux estimatesare assumed to be sufficiently accurate, and the motor control beginsusing the estimated flux to control the motor.

After some period of time, and possibly due to some external factor, theflux estimate in the prior art controller could become unreliable. Inthat event, the rotor position and speed estimate become unreliableresulting in the drive tripping or problematic oscillation.

SUMMARY

This section provides a general summary of the disclosure, and is not acomprehensive disclosure of its full scope or all of its features.

According to one aspect of the present disclosure, a method ofcontrolling a permanent magnet motor is disclosed. The method includesestimating flux of the motor, determining whether the estimated flux hassubstantially converged toward an actual flux of the motor and, inresponse to determining the estimated flux has substantially convergedtoward the actual flux, using the estimated flux to control the motor.

According to another aspect of this disclosure, a method of operating apermanent magnet motor is disclosed. The method includes estimating fluxof the motor, using the estimated flux to control the motor, determiningwhether the estimated flux has substantially diverged from an actualflux of the motor and, in response to determining the estimated flux hassubstantially diverged from the actual flux, discontinuing use of theestimated flux to control the motor.

According to yet another aspect of this disclosure, another method ofcontrolling a permanent magnet motor is disclosed. The method includesestimating flux of the motor, monitoring power to a drive for the motor,detecting when the power to the drive returns to a defined level afterfalling below the defined level and, after the power to the drivereturns to the defined level, determining whether the estimated flux hassubstantially converged toward an actual flux of the motor. The methodfurther includes, if the estimated flux is determined to havesubstantially converged toward the actual flux, using the estimated fluxto generate control signals for the motor.

According to still another aspect of this disclosure, yet another methodof controlling a permanent magnet motor is disclosed. The methodincludes estimating flux of the motor during start-up of the motor,determining whether the estimated flux has substantially convergedtoward an actual flux of the motor within a defined time period and, inresponse to determining the estimated flux has not substantiallyconverged toward the actual flux during the defined time period, stopattempting to spin the motor.

Further areas of applicability will become apparent from the descriptionprovided herein. The description and specific examples in this summaryare intended for purposes of illustration only and are not intended tolimit the scope of the present disclosure.

DRAWINGS

The drawings described herein are for illustrative purposes only ofselected embodiments and not all possible implementations, and are notintended to limit the scope of the present disclosure.

FIG. 1 is a block diagram of a method of detecting a found rotoraccording to one aspect of the present disclosure.

FIG. 2 is a block diagram of a method of detecting a lost rotoraccording to another aspect of the present disclosure.

FIG. 3 is a block diagram of a method of detecting a locked rotorcondition upon start-up according to yet another aspect of thisdisclosure.

FIG. 4 is a block diagram of a method of catching a rotor after a powerdisruption according to still another aspect of this disclosure.

FIG. 5 is a block diagram of an example permanent magnet motor assemblyaccording to some embodiments of the present disclosure.

FIG. 6 is a block diagram of a Luenberger observer employed in oneexample of the present disclosure.

FIGS. 7A-7D illustrate plots of convergence detection using the varianceof error in measured and estimated currents.

FIGS. 8A-8D illustrate plots of convergence detection using the varianceof estimated magnet flux.

DETAILED DESCRIPTION

Example embodiments will now be described more fully with reference tothe accompanying drawings.

Example embodiments are provided so that this disclosure will bethorough, and will fully convey the scope to those who are skilled inthe art. Numerous specific details are set forth such as examples ofspecific components, devices, and methods, to provide a thoroughunderstanding of embodiments of the present disclosure. It will beapparent to those skilled in the art that specific details need not beemployed, that example embodiments may be embodied in many differentforms and that neither should be construed to limit the scope of thedisclosure. In some example embodiments, well-known processes,well-known device structures, and well-known technologies are notdescribed in detail.

The terminology used herein is for the purpose of describing particularexample embodiments only and is not intended to be limiting. As usedherein, the singular forms “a”, “an” and “the” may be intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. The terms “comprises,” “comprising,” “including,” and“having,” are inclusive and therefore specify the presence of statedfeatures, integers, steps, operations, elements, and/or components, butdo not preclude the presence or addition of one or more other features,integers, steps, operations, elements, components, and/or groupsthereof. The method steps, processes, and operations described hereinare not to be construed as necessarily requiring their performance inthe particular order discussed or illustrated, unless specificallyidentified as an order of performance. It is also to be understood thatadditional or alternative steps may be employed.

Although the terms first, second, third, etc. may be used herein todescribe various elements, components, regions, layers and/or sections,these elements, components, regions, layers and/or sections should notbe limited by these terms. These terms may be only used to distinguishone element, component, region, layer or section from another region,layer or section. Terms such as “first,” “second,” and other numericalterms when used herein do not imply a sequence or order unless clearlyindicated by the context. Thus, a first element, component, region,layer or section discussed below could be termed a second element,component, region, layer or section without departing from the teachingsof the example embodiments.

FIG. 1 illustrates a method 100 of controlling a permanent magnet motoraccording to one aspect of the present disclosure. The method includes,in block 102, estimating flux of the motor and, in block 104,determining whether the estimated flux has substantially convergedtoward an actual flux of the motor. The method further includes, inblock 106, in response to determining the estimated flux hassubstantially converged toward the actual flux, using the estimated fluxto control the motor. In this manner, the estimated flux can be used tocontrol the motor immediately after determining the estimated flux hassubstantially converged. This can minimize the amount of time a motor iscontrolled without using the estimated flux (e.g., in an open loopcontrol mode). Alternatively, the estimated flux may not be used tocontrol the motor until a defined time after the estimated flux isdetermined to have substantially converged. For example, the estimatedflux may not be used for control purposes until a predefined delayperiod has expired, or until an operating condition of the motor issatisfied, etc., after the estimated flux is determined to havesubstantially converged. The method described above can be used duringstart-up and/or at any other suitable time when the motor is operating.

For purposes of this disclosure, the estimated flux is considered tohave substantially converged toward the actual flux when the estimatedflux is within a defined margin of error relative to the actual flux,such that the estimated flux can be used to effectively control themotor. The margin of error may be defined as a constant value (that mayor may not vary during operation of the motor, e.g., in response to anoperating condition of the motor), as a statistical measure and/or asotherwise appropriate for any given application of these teachings.Whether the estimated flux is within the defined margin of error at anygiven time can be determined in a variety of ways, some examples ofwhich are described below. The rotor is considered to be “found” whenthe estimated flux has substantially converged toward the actual flux ofthe motor.

The flux of the motor can be estimated using any suitable technique(including those known now or in the future). Typically, flux (e.g.,magnet flux and/or linkage flux) is estimated in a selected referenceframe using an observer (also called an estimator) such as a Kalmanobserver, a Luenberger observer, etc. The selected reference frame mayinclude stationary reference frames such as the stator reference frame(e.g., the two phase alpha beta or three phase ABC reference frame) androtating reference frames such as the electrical reference frame, therotor reference frame that is synchronous with the rotor, the Theta_vreference frame (also called the drive or command reference frame) thatis synchronous with the commanded speed omega_v, or an arbitraryreference frame that is rotated at a particular angular velocitysynchronous with another system parameter. However, other suitabletechniques for estimating flux can be used in any given application ofthese teachings. Further, the flux may be estimated using measured,estimated or demanded phase currents and/or phase voltages of the motorand or inverter bus voltage and/or device currents (measured, estimatedor demanded).

Similarly, a variety of techniques may be employed for determiningwhether the estimated flux has substantially converged toward the actualflux of the motor. For example, another motor operating parameter can becalculated in a selected reference frame using the estimated flux, andthen compared with a measured value of that operating parameter in thesame reference frame. The difference between the estimated and measuredvalues is related to the difference between the estimated and actualflux of the motor, and can be used to determine whether the estimatedflux has substantially converged toward the actual flux (as well as tocorrect a next estimate of the flux, if desired). In some embodiments,phase currents are calculated using the estimated flux and compared withmeasured phase currents to determine whether the estimated flux iswithin a defined margin of error relative to the actual flux of themotor. Alternatively, and assuming the actual flux of the motor cannotbe measured directly, a different parameter such as angle or speed canbe estimated and compared to a measured value to determine whether theestimated flux is within the defined margin.

The estimated and measured values of the motor operating parameter maybe processed as an error signal to determine whether the estimated fluxhas substantially converged toward the actual flux. This processing mayinclude producing statistical information (mean, variance, standarddeviation, etc.) for the error signal, and may be performed, forexample, by a digital filter implementing a suitable function such as arecursive rolling mean. In some embodiments, the statistical informationis used to increment or decrement a counter, with the value of thecounter representing convergence of the estimated flux when the countervalue is within a defined range. The counter rules applied may depend onwhether convergence has been detected, on an operating state of themotor, and/or other condition(s).

The estimated flux can be used to control the motor according to theparticular motor control scheme employed including, e.g., flux controland current control schemes, where the flux or current of the motor iscontrolled via an applied voltage. Typically, the flux or current of themotor is controlled in response to a high level input demand such as atorque, speed, current or other demand signal. Further, the motorcontrol scheme employed may be sensorless (i.e., where mechanical angleand speed are not measured directly but rather estimated from variationin motor variables, such as phase current and voltage) or,alternatively, rely on a rotor position sensor. In any event, using theestimated flux to control the motor will typically include estimatingthe value of another motor operating parameter using the estimated flux,and using the estimated value to control the motor. For example,estimated magnet flux can be used to estimate electrical angle andspeed. The estimated angle may then be used in a rotating referenceframe current controller, and/or the estimated speed may be used in aspeed controller.

In response to determining the estimated flux has substantiallyconverged toward the actual flux of the motor, control of the motor may,in some embodiments, transition from one control scheme to another. Forexample, the motor may be controlled in an open loop control mode, andthen transitioned to a closed loop control mode after the estimated fluxis determined to have converged. The estimated flux may then be used inthe closed loop control mode—which may be a closed loop sensorlesscontrol mode—to control the motor.

FIG. 2 illustrates a method 200 of operating a permanent magnet motoraccording to another aspect of the present disclosure. The method 200includes estimating flux of the motor in block 202, using the estimatedflux to control the motor in block 204, and determining whether theestimated flux has substantially diverged from an actual flux of themotor in block 206. The method 200 further includes, in block 208, inresponse to determining the estimated flux has substantially divergedfrom the actual flux, discontinuing use of the estimated flux to controlthe motor.

The flux can be estimated and used to control the motor in any suitablemanner including those described above. Similarly, a variety oftechniques may be employed for determining whether the estimated fluxhas substantially diverged from the actual flux of the motor, includingtechniques similar to those described above. For purposes of thisdisclosure, the estimated flux is considered to have substantiallydiverged from the actual flux when the estimated flux is no longerwithin a defined margin of error relative to the actual flux, such thatthe estimated flux can no longer be used to effectively control themotor. The defined margin of error may be defined as a constant value(that may or may not vary during operation of the motor, (e.g., inresponse to an operating condition of the motor), as a statisticalmeasure and/or as otherwise appropriate for any given application ofthese teachings. The rotor is considered to be “lost” when the estimatedflux has substantially diverged from the actual flux of the motor.

Upon determining the estimated flux has substantially diverged from theactual flux of the motor, control of the motor may continue while use ofthe estimated flux to control the motor is discontinued. In that event,control of the motor may transition from one control scheme to another.For air moving (including HVAC fans and blowers) and other applications,the control may transition from a closed loop control mode that uses theestimated flux to an open loop control mode that does not use theestimated flux. As another example, applicable to compressor and otherapplications, the overall control scheme may transition from a speedcontrol mode to a torque control mode upon detecting a lost rotor, withan appropriate adjustment (if necessary) to the torque demand (e.g.,setting the torque demand to a maximum value) to execute a failsafe modeof operation. In any event, the control may attempt to find the rotorusing the method described above while the motor is operated accordingto another control scheme. This may include adjusting a speed, torque,current or other demand to aid in finding the rotor. Alternatively, thecontrol may simply shutdown and restart the motor after detecting a lostrotor.

FIG. 3 illustrates a method 300 of controlling a permanent magnet motoraccording to another aspect of the present disclosure. The method 300includes estimating flux of the motor during start-up of the motor inblock 302, and determining whether the estimated flux has substantiallyconverged toward an actual flux of the motor within a defined timeperiod in block 304. The method 300 further includes, in response todetermining the estimated flux has not substantially converged towardthe actual flux during the defined time period, stopping attempting tospin the motor in block 306. In this manner, the motor and drive can beprotected once a locked rotor condition is detected.

The flux can be estimated during start-up of the motor in any suitablemanner, including with the method described above. Similarly, a varietyof techniques may be employed for determining whether the estimated fluxhas substantially converged toward the actual flux of the motor withinthe defined time period, including the techniques described above. Theminimum time period can be set as desired in any given implementation ofthese teachings. For example, in some embodiments, the minimum timeperiod is defined as the expected acceleration ramp time plus ten totwenty electrical cycles.

The method may further include attempting to restart the motor a definedtime after stopping attempting to spin the motor, and/or raising alocked rotor flag in response to determining the estimated flux has notsubstantially converged toward the actual flux during the defined timeperiod.

FIG. 4 illustrates a method 400 of controlling a permanent magnet motorhaving a rotor according to another aspect of the present disclosure.The method 400 includes estimating flux of the motor in block 402,monitoring power to a drive for the motor in block 404, detecting whenthe power to the drive returns to a defined level after falling belowthe defined level in block 406 and, after the power to the drive returnsto the defined level, determining whether the estimated flux hassubstantially converged toward an actual flux of the motor in block 408.The method 400 further includes, in response to determining theestimated flux has substantially converged toward the actual flux, usingthe estimated flux to generate control signals for the motor in block410. In this manner, the rotor can be “caught” after a power disruptionwithout requiring a power-down and restart of the motor.

The flux can be estimated, a determination can be made (after power tothe drive returns to the defined level) as to whether the estimated fluxhas substantially converged toward the actual flux, and the estimatedflux can then be used to generate control signals for the motor(including control signals provided to a drive of the motor) using anysuitable techniques including those described above. Similarly, thepower to the drive can be monitored, and the return of power to thedefined level (such as a defined voltage or power level) can bedetected, in any suitable way including those commonly employed in themotor industry.

In many cases, control of the motor is suspended, and power may beremoved from the drive, when the power level falls below a definedlevel. As a result, the rotor will be coasting down in speed when powerreturns to the defined level and, thus, when determining whether theestimated flux has substantially converged toward the actual flux of themotor. In some embodiments, if the estimated flux is not determined tohave substantially converged toward the actual flux after power to thedrive returns to the defined level, the rotor is allowed to stop and themotor can then be restarted, if desired. Alternatively, if the estimatedflux is determined to have substantially converged toward the actualflux after the power for the drive returns to the defined level, powermay be reapplied to the drive (if it was removed after detecting thepower disruption) before and when the estimated flux is used to generatecontrol signals.

It should be understood that the teachings above related to finding arotor, detecting a lost rotor, detecting a locked rotor condition, andcatching a rotor following a power disruption can be implementedindependently or in combination with one or more of the other teachings.For the combined embodiments, more than one defined margin of error maybe employed. For example, the defined margin of error for determiningwhether the rotor is caught following a power disruption can bedifferent than the defined margin(s) of error for determining whetherthe rotor is found, lost and/or locked.

FIG. 5 illustrates an example motor assembly 500 according to someembodiments of this disclosure. As shown in FIG. 5, the assembly 500includes a permanent magnet motor 501 having surface and/or embeddedmagnets on or in the rotor, such as a permanent magnet alternatingcurrent (PMAC) motor or a hybrid permanent magnet/switched reluctance(PM/SR) motor. Other examples of permanent magnet motors include fluxguided permanent magnet machines, embedded magnet permanent magnetmachines, inset permanent magnet machines, axial permanent magnetmachines, and outer rotor permanent magnet machines. The permanentmagnet motor 501 shown in FIG. 5 includes a stator 502 and an innerrotor 504. Alternatively, other types of permanent magnet motors,including those employing an outer rotor design (where the rotor spinsaround the stator) can be used.

In the example of FIG. 5, the motor 501 is a three phase motor withenergizable phase windings 506A, 506B, 506C wound about the stator 502.The windings 506A, 506B, 506C are energized through the application ofelectric power to the motor phase terminals.

A drive 508 is coupled to the phase terminals of the motor for providingelectric power to the terminals in response to control signals from acontroller 510. The controller 510 receives energization feedback 512from the motor (such as the currents and/or voltages at the motorterminals) and/or assumes the voltages supplied to the phase terminalsare the same as the voltages demanded by the controller 510 (i.e., viathe control signals provided to the drive 508). As shown in FIG. 5, thecontroller receives an input demand 514 that may be, for example, atorque demand, a speed demand, a current demand, etc. Further, thecontroller 510 may be configured to estimate flux of the motor 501 anduse the estimated flux to perform flux control, current control, orother suitable control of the motor 501 (with or without the aid of arotor position sensor).

While the drive 508 of FIG. 5 is illustrated in exemplary form asenergizing three power terminals of a three phase motor 501, it shouldbe understood that more or fewer power terminals may be provided toaccommodate motors with more or less than three phases, or if varioustypes of inverters (e.g., with neutral connections) are used. The drivemay be of conventional design and configured to provide, e.g., sinewaveexcitation or square wave excitation to the motor terminals.

The controller 510 of FIG. 5 may be configured to perform any or all ofthe aspects described above, including detecting a found rotor,detecting a lost rotor, catching a rotor following a power disruptionand/or detecting a locked rotor upon start-up.

One example embodiment of the assembly shown in FIG. 5 will now bedescribed with reference to FIGS. 6-8. In this particular example, thecontroller is configured to detect when the rotor is lost, found, lockedor caught after a power disruption using a Luenberger observer forestimating magnet flux and flux linkage.

In general, a function representing the estimator states and drivestates is calculated. A measure of the function behavior is then made,such as by approximating one or more suitable statistics. The value ofthe behavior measure can then be used to indicate whether the estimatedflux has substantially converged toward (or diverged from) the actualflux of the motor. For example, the behavior measure may be used withone or more counters to determine convergence or divergence. Countersare a simple way to manage the lost/found rotor determination and dealwith the issue of false alarms (i.e., the incorrect indication ofconvergence or divergence). Additionally, counters remove thepossibility of rapid and inappropriate oscillation between convergenceand divergence states by appropriate definition of the counter rules. Itshould be understood, however, that the teachings of this disclosure canbe implemented without using counters, and that use of a counter in aparticular embodiment may depend on how the behavior measure is defined.

Generating the Function Representing Estimate and Drive States

In this example, the function (e.g., signal) representing the estimatorand drive states is an error function. To generate the error function,an estimated value of a motor operating parameter is compared with ameasured value of the same parameter. In this particular case, theestimated flux can be divided by the inductance of the motor to estimatecurrent flow in the drive reference frame. The estimated current flowcan then be compared with the actual (measured) flow of current in thedrive reference frame to generate the error function (sometimes calledthe observation variable). In addition to indicating convergence anddivergence, the error function can also be used to correct the fluxestimate at the next sample interval.

FIG. 6 illustrates the Luenberger observer for this particular example.As noted above, the observer estimates magnet flux and flux linkage. Thepresence of an estimate is indicated by a hat symbol over the variablename, and so:Magnet flux={circumflex over (λ)}_(fQdv)Flux linkage={circumflex over (λ)}_(Qdv)

Calculated current flowing, using the

${{flux}\mspace{14mu}{estimate}} = {{\hat{I}}_{Qdv} = \begin{pmatrix}{\hat{I}}_{Qv} \\{\hat{I}}_{dv}\end{pmatrix}}$

${{Actual}\mspace{14mu}{current}\mspace{14mu}{flowing}}\mspace{14mu} = {I_{Qdv} = \begin{pmatrix}I_{Qv} \\I_{dv}\end{pmatrix}}$

In this example, the error signal within the Luenberger Observer isgiven by:

$\begin{matrix}{{{\delta\; I_{Qdv}} = {I_{Qdv} - {\hat{I}}_{Qdv}}}{{where}\text{:}}{{\hat{I}}_{Qdv} = {\begin{pmatrix}\frac{1}{L + M} & 0 & \frac{- 1}{L + M} & 0 \\0 & \frac{1}{L + M} & 0 & \frac{- 1}{L + M}\end{pmatrix} \cdot \begin{pmatrix}\lambda_{Qv} \\\lambda_{dv} \\\lambda_{fQv} \\\lambda_{fdv}\end{pmatrix}}}} & (1)\end{matrix}$

In the drive frame of reference, the state estimates may exhibit lowfrequency oscillation. Although it is possible to deal with such issuesin the calculation of an appropriate measure, it is easier to avoid thisissue altogether. This is done by transforming Equation (1) into theelectrical frame of reference:δI _(Qdr) =I _(Qdr) −Î _(Qdr)  (2)

This value is now quasi-stationary which simplifies the issue ofestimating mean, variance and standard deviation, which are the methodsof measuring the behavior of the error signal in this exampleembodiment.

Measuring the Behavior of the Generated Function

The error signal is now processed to generate what may be termed thealarm signal. The alarm signal is typically a stream of statisticalinformation about the error signal.

As the estimated flux converges toward the actual flux of the motor, theabsolute value of the error signal decreases. Therefore, the absolutevalue of the error signal can be used to determine convergence ordivergence. Further, as the estimated flux converges toward the actualflux of the motor, the error signal settles down and becomes less“jumpy” or “noisy.” Therefore, in addition to or instead of using theabsolute value of the error signal, a statistical or other measure ofthe error signal may be used to determine convergence or divergence.Accordingly, in this example, the variance of the error signal isestimated and employed. This can be done many different ways, includingwith a digital filter (e.g., having an output calculated from specifiedinputs that may or may not include previous inputs and/or outputs) Thereare also many other statistics, functions and estimates of such whichcan be used in place of (or in addition to) variance. For example, achange in variance or mean can be detected. Further, other methods formeasuring the behavior of complex signals may be employed, includingthose used for cardiograph analysis, speech recognition and seismographdata analysis.

In this example embodiment, a digital rolling mean filter is employed.Alternatively, a variety of other filters, including digital low passfilters, may be used.

The definition of mean, variance and standard deviation are given as:

$\begin{matrix}{{Mean} = {\frac{1}{N} \cdot {\sum\limits_{k = 1}^{N}x_{k}}}} & (3) \\{{Variance} = {\frac{1}{N} \cdot {\sum\limits_{k = 1}^{N}\left( {x_{k} - {Mean}} \right)^{2}}}} & (4) \\{{{Standard}\mspace{14mu}{deviation}} = {+ \sqrt{Variance}}} & (5)\end{matrix}$

A recursive rolling mean can be implemented in the following way:NewMean=α·OldMean+(1−α)·NewObservation  (6)

In this case, α is a continuous variable in the range 0 to 1.

It can be seen how this simple recursive expression can be used todevelop approximations of the statistics defined above. The rolling meanis used in the first instance to estimate mean and then to generate anapproximation of variance or standard deviation. Other statistics and/ormeasures (e.g., consistency, bias, efficiency, etc.) can be employed(including those that are recursive in nature, allowing for theirapplication at each sample interval), though possibly with addedcomputational cost.

Determining Convergence/Divergence

In this particular example, the behavior measure of the error functionis variance. The values of variance are used to increment or decrement acounter, with the counter value representing convergence or divergence.Alternatively, the standard deviation values can be used to increment ordecrement the counter. The mean square error is equal to the varianceplus the square of the bias in the signal. Therefore, if there is nobias in the signal, the variance and standard deviation values will benearly equivalent.

When the counter value lies in a defined range, the estimated flux isdeemed to have substantially converged toward the actual flux of themotor. Likewise, when the counter value lies in another defined range,the estimated flux is deemed to have substantially diverged from theactual flux of the motor. The defined ranges for determining convergenceand divergence are contiguous such that a single binary flag can be usedto indicate both convergence and divergence.

The counter is incremented and decremented according to a set of rules.These rules may vary for any given implementation, and may varydepending on the operating condition of the motor. In this example, thecounter is not continually incremented once the flag is set (indicatingconvergence), and is not decremented below zero. Further, the boundaryvalues at which the flag is set or reset depend on whether convergenceor divergence is occurring and whether it is the first time such anevent has occurred.

A typical set of rules for the operation of the counter and the stateflag are given below, where: the flag F is Boolean (1 or 0); the measuresignal (M) is a continuous real variable; boundary values MaxC and MinCare positive integers and the counter value C is integer.

1. If flag not set (F equal to 0) and measure signal (M) less thanboundary value (M < B1), increment counter (C = C + 1). 2. If flag isset (F equal to 1) and measure signal (M) less than boundary value (M <B1), do no increment counter (C = C). 3. If flag not set (F = 0) andmeasure signal (M) exceeds boundary range (M >= B) and counter (C > 0)is greater than zero decrement counter (C = C − 1). 4. If flag not set(F = 0) and measure signal (M) exceeds boundary range (M >= B) andcounter (C) is greater than zero decrement counter (C = C − 1). 5. Ifcounter (C) equal to maximum boundary value (C = MaxC) then set flag (F= 1). 6. If counter (C) less than minimum boundary value (C < MinC) thenset flag (F = 0).

The value for MinC is usually greater than zero but less than MaxC. Thevalues for M, MinC and MaxC may be fixed for a motor and drive or theymay be allowed to vary according to a schedule, which may be defined by,e.g., the demanded speed, estimated power, etc. Through appropriateselection of the values for MinC, MaxC and boundary B, false alarms canbe minimized.

FIGS. 7A-7D illustrate exemplary plots generated using the exampleembodiment and convergence detection based upon the variance of error inthe measured and estimated currents. An observer was applied to datagathered in steady state operation, and the output from the observer anddetection scheme recorded. Specifically, FIG. 7A illustrates the error702, rolling mean 704, and variance 706 signals; FIG. 7B illustrates theestimated angle 708 and convergence point (square 710); FIG. 7Cillustrates whether the variance 714 is in range, and whetherconvergence 716 is detected (if the convergence signal 716 is high,convergence is detected); and FIG. 7D illustrates the variance signalvs. the error signal.

FIGS. 8A-8D illustrate exemplary plots generated using convergencedetection based upon the variance signal of the estimated magnet flux.FIG. 8A illustrates the error 802, rolling mean 804, and variance 806signals; FIG. 8B illustrates the estimated angle 808 and convergencepoint (square 810); FIG. 8C illustrates whether the variance 814 is inrange, and whether convergence 816 is detected (if the convergencesignal 816 is high, convergence is detected); and FIG. 8D illustratesthe variance signal vs. the error signal.

The controller is also configured to monitor the bus voltage (not shown)supplied to the drive. In this example, the bus voltage is normallyabout 325 vdc. If the bus voltage drops below 200 volts vdc, thecontroller may decrease the demanded speed or stop driving the motor toprevent damage to the motor. When the bus voltage returns to 200 voltsvdc or above, the controller tries to find the rotor using the methodsdescribed above. Typically, the rotor will be coasting down in speedduring this time. If the controller finds the rotor, normal operation ofthe motor (i.e., using the estimated flux) can resume. Otherwise, therotor can be allowed to stop before restarting the motor.

Further still, the controller is configured to detect a locked rotorcondition upon start-up of the motor. For example, if the rotor is notfound within a defined time duration, such as about four seconds, thecontroller will stop attempting to spin the motor. If desired, thecontroller may be configured to restart the motor after some period oftime, which may be only two or three seconds or longer. Additionally,the controller may raise a locked rotor flag if the rotor is not foundwithin the defined time duration upon startup. The locked rotor flag maybe used by the controller and/or provided to (or read by) anothercontroller (e.g., a system controller).

Some Alternatives for Generating the Function

The error function can be generated from the states available within theobserver, which may or may not be augmented by additional variables fromthe drive. Recall Equation (1):δI _(Qdv) =I _(Qdv) −Î _(Qdv)  (1)

There is a Qv-axis and a dv-axis current error. In its simplest form,the signal used by the scheme is some function of these errors. Examplesinclude:

Error only in the Qv-axis: I_(Qv)−Î_(Qv)

Square of the error in the Qv-axis: (I_(Qv)−Î_(Qv))²

Dot inner product of the Qdv-error product: δI_(Qdv)′·δI_(Qdv) equal to(I_(Qv)−Î_(Qv))²+(I_(dv)−Î_(dv))²

One variation of this is to transform these variables from the driveframe of reference, the so-called Qdv frame of reference, to theelectrical frame of reference or Qdr. The Qdv frame of referencevariables can exhibit a slow sinusoidal oscillation. By placing theminto the Qdr-frame of reference, this oscillation is removed.

Error only in the Qr-axis: I_(Qv)−Î_(Qv)

Square of the error in the Qr-axis: (I_(Qr)−Î_(Qr))²

Dot inner product of the Qdr-error product: δI_(Qdr)′·δI_(Qdr) equal to(I_(Qr)−Î_(Qr))²+(I_(dr)−Î_(dr))²

It should be appreciated that other types of error signals can begenerated and used for determining convergence and divergence. Forexample, magnet flux is fixed in value, altering only as the magnetsheat and cool. Consequentially, the magnet flux values provide anotheruseful method for calculating a signal. In this case, the signal is notan error term but an absolute value of flux, the value of which is wellknown in advance from the basic machine design parameters.

In the Drive Frame of Reference:

Qv-axis magnet flux: {circumflex over (λ)}_(fQv)

dv-axis magnet flux: {circumflex over (λ)}_(fdv)

Dot inner product of the magnet flux estimate: {circumflex over(λ)}_(fQv) ²+{circumflex over (λ)}² _(fdv)

In the electrical frame of reference:

Qr-axis magnet flux: {circumflex over (λ)}_(fQr)

dr-axis magnet flux: {circumflex over (λ)}_(fdr)

Dot inner product of the magnet flux estimate: {circumflex over(λ)}_(fQr) ²+{circumflex over (λ)}² _(fdr)

Alternatively, values involving the total flux linkage in the Q andd-axis can be used. These are quasi-stationary values, although thevalues may change depending on the stator winding energization.

Drive Frame of Reference:

Qv-axis flux linkage: {circumflex over (λ)}_(Qv)

dv-axis flux linkage: {circumflex over (λ)}_(dv)

Dot inner product of the Qdv-flux estimate: {circumflex over (λ)}_(Qv)²+{circumflex over (λ)}² _(dv)

Electrical Frame of Reference:

Qr-axis flux linkage: {circumflex over (λ)}_(Qr)

dr-axis flux linkage: {circumflex over (λ)}_(dr)

Dot inner product of the Qdr-flux estimate: {circumflex over (λ)}_(Qr)²+{circumflex over (λ)}² _(dr)

One may also choose to normalize the estimated expression(s), forexample, to produce nominal maximum current, nominal magnet flux, etc.

In the case of those signals representing magnet flux, a test can beused to determine whether the value {circumflex over (λ)}_(fQr) lieswithin some percentage of the expected value known from the design, suchas:IS({circumflex over (λ)}_(fQr) ≧a·λ _(motor))AND({circumflex over(λ)}_(fQr) ≦b·λ _(motor))where a≦1 and b≧1.

As noted above, whether the estimated flux has substantially convergedor diverged can be determined many different ways, each having its ownadvantage or disadvantage. In addition, two (or more) separate tests maybe combined for improved results, including a reduced incidence of falsealarms.

In one example embodiment, a first test is based on the error in theQr-axis current, and a second test is based on the value of theQr-magnet flux.

Regardless of the tests employed, a positive result from two separatetests (i.e., an AND operation) can be required before indicating a lostor found rotor. Alternatively, a positive result from one test may berequired before a second test is started, or the two tests may be passedthrough an OR operation, etc.

The foregoing description of the embodiments has been provided forpurposes of illustration and description. It is not intended to beexhaustive or to limit the invention. Individual elements or features ofa particular embodiment are generally not limited to that particularembodiment, but, where applicable, are interchangeable and can be usedin a selected embodiment, even if not specifically shown or described.The same may also be varied in many ways. Such variations are not to beregarded as a departure from the invention, and all such modificationsare intended to be included within the scope of the invention.

The invention claimed is:
 1. A method of controlling a permanent magnetmotor having a rotor, the method comprising: estimating flux of themotor; monitoring power to a drive for the motor; detecting when thepower to the drive returns to a defined level after falling below thedefined level; after the power to the drive returns to the definedlevel, determining whether the estimated flux has substantiallyconverged toward an actual flux of the motor; and if the estimated fluxis determined to have substantially converged toward the actual flux,using the estimated flux to generate control signals for the motor. 2.The method of claim 1 wherein determining includes determining whetherthe estimated flux has substantially converged toward the actual flux asthe rotor is coasting down in speed.
 3. The method of claim 1 furthercomprising, in response to determining the estimated flux has notsubstantially converged toward the actual flux, allowing the rotor tostop.
 4. The method of claim 3 further comprising restarting the motorafter the rotor is allowed to stop.
 5. The method of claim 1 furthercomprising removing the power to the drive when the power falls belowthe defined level, and reapplying the power to the drive when the powerreturns to the defined level.
 6. The method of claim 1 whereindetermining includes estimating a value of another motor operatingparameter frame using the estimated flux, and comparing the estimate ofsaid motor operating parameter with a measured value of said motoroperating parameter.
 7. The method of claim 6 wherein comparing includesproducing an error signal from the estimated and measured values of saidmotor operating parameter, and processing the error signal to determinewhether the estimated flux has substantially converged toward the actualflux.
 8. The method of claim 7 wherein said motor operating parameter iscurrent flow.
 9. The method of claim 7 wherein processing includesproducing statistical information for the error signal.
 10. The methodof claim 9 wherein the statistical information includes mean, varianceand/or standard deviation.
 11. The method of claim 9 wherein processingincludes processing the error signal with a digital filter to producethe statistical information.
 12. The method of claim 11 whereinprocessing includes incrementing and/or decrementing a counter accordingto an output of the digital filter.
 13. The method of claim 12 whereinthe output of the digital filter is a recursive rolling mean for theerror signal.
 14. The method of claim 12 wherein processing includesincrementing and/or decrementing the counter according to a set ofcounter rules and the output of the digital filter.
 15. The method ofclaim 14 wherein the counter rules depend on the operating state of themotor.
 16. The method of claim 1 wherein flux includes magnet flux andflux linkage terms.
 17. The method of claim 1 wherein estimatingincludes estimating the flux value using an observer.
 18. The method ofclaim 1 wherein the motor does not include a rotor position sensor. 19.The method of claim 1 wherein using includes estimating a value ofanother motor operating parameter using the estimated flux, and usingthe estimated value of said motor operating parameter to control themotor.
 20. The method of claim 19 wherein said motor operating parameteris electrical angle or speed.
 21. The method of claim 1 wherein usingincludes using the estimated flux to control motor current or motorflux.
 22. The method of claim 1 wherein estimating includes estimatingthe flux using measured or demanded phase currents and/or phase voltagesof the motor.